package com.yami.car.bean.model;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @author 电瓶车-订单表
 */

@Data
@TableName("car_order")
public class CarOrder implements Serializable {

    @TableId
    private Long orderId;

    /**
     * 订购用户ID
     */
    private String userId;

    /**
     * 订购流水号
     */
    private String orderNumber;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 订单状态 1:预约中 2:取消预约 3:交易完成
     */
    private Integer status;

    /**
     * 订单总金额
     */
    private Double orderAmount;

    /**
     * 订单地址
     */
    private String orderAddr;

    /**
     * 联系电话
     */
    private String contactNums;

    /**
     * 联系人
     */
    private String contactName;

    /**
     * 品牌
     */
    private String brand;

    /**
     * 电池
     */
    private String battery;

    /**
     * 电压容量
     */
    private String voltage;

    /**
     * 外观情况
     */
    private String appearance;

    /**
     * 订购时间
     */

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 订单更新时间
     */

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 完成时间
     */

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date finallyTime;

    /**
     * 取消时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cancelTime;

    /**
     * 用户订单删除状态，0：没有删除， 1：回收站， 2：永久删除
     */
    private Integer deleteStatus;

    /**
     * 0:默认,1:在处理,2:处理完成
     */
    private Integer refundSts;

    /**
     * 优惠总额
     */
    private Double reduceAmount;

    /**
     * 订单类型：1：电瓶车
     */
    private String orderType;

    /**
     * 订单关闭原因 1-超时未支付 2-退款关闭 4-买家取消 15-已通过货到付款交易
     */
    private String closeType;

}
